package com.jmb.apiplatform.pojo;

import jakarta.validation.constraints.DecimalMax;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class DbDao implements Serializable {
    // 编号
    private Integer id;
    // 数据库名称
    private String dbName;
    // 名称
    private String name;
    // 类型 0mysql,1oracle,2sqlserver
    private Integer type;
    // 描述
    private String desc;
    // 调试环境地址
    private String url;
    // 调试环境用户名
    private String username;
    // 调试环境密码
    private String password;
    // 创建时间
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdTime;
    // 修改时间
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
    // 状态 0启用,1禁用 默认启用
    @NotNull(message = "状态不能为空")
    @DecimalMax(value = "1", message = "状态只能是0或1")
    private Integer status;
    // 测试环境地址
    private String testUrl;
    // 测试环境用户名
    private String testUsername;
    // 测试环境密码
    private String testPassword;
    // 开发环境url
    private String devUrl;
    // 开发环境用户名
    private String devUsername;
    // 开发环境密码
    private String devPassword;
    // 预上线环境url
    private String stgUrl;
    // 预上线环境用户名
    private String stgUsername;
    // 预上线环境密码
    private String stgPassword;
    // 线上环境url
    private String prodUrl;
    // 线上环境用户名
    private String prodUsername;
    // 线上环境密码
    private String prodPassword;
}
